package main

import (
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
	"gopkg.in/natefinch/lumberjack.v2"
)

func main() {
	log := &lumberjack.Logger{
		Filename:   "/path/file.log", // 日志文件的位置
		MaxSize:    10,               // 文件最大尺寸（以MB为单位）
		MaxBackups: 3,                // 保留的最大旧文件数量
		MaxAge:     28,               // 保留旧文件的最大天数
		Compress:   true,             // 是否压缩/归档旧文件
		LocalTime:  true,             // 使用本地时间创建时间戳
	}
	writer := zapcore.AddSync(log)
	core := zapcore.NewCore(
		zapcore.NewJSONEncoder(zap.NewProductionEncoderConfig()),
		writer,
		zap.InfoLevel,
	)
	logger := zap.New(core)
	defer logger.Sync() // 刷新任何缓冲的日志条目

}
